package com.mcxx.modules.miniSalvation.family.dao.read;

import com.mcxx.modules.miniSalvation.check.dto.CheckMemberDTO;
import com.mcxx.modules.miniSalvation.check.dto.IntegrateCheckMemberDTO;
import com.mcxx.modules.miniSalvation.family.dto.FamilyMemberDTO;
import com.mcxx.modules.miniSalvation.family.dto.FamilyMemberHistoryDTO;
import com.mcxx.modules.miniSalvation.family.dto.MemberCardRtnDTO;
import com.mcxx.modules.miniSalvation.family.entity.BankEntity;
import com.mcxx.modules.miniSalvation.family.entity.FamilyMemberHistoryEntity;
import com.mcxx.modules.system.dto.AuditConfirmListDTO;
import com.mcxx.modules.system.dto.ConfirmListMemberDTO;
import com.yinhai.ta404.module.mybatis.mapper.Ta404SupportMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


public interface FamilyMemberHistoryReadDao extends Ta404SupportMapper {


    List<FamilyMemberHistoryEntity> listAll();


    FamilyMemberHistoryEntity getById(String id);


    FamilyMemberHistoryEntity getBySourOrderId(String memberId,String sourOrderId);


    FamilyMemberDTO getByIdAndBusinessCode(@Param("id")String id,@Param("businessCode")String businessCode);


    String queryStateByCardId(@Param("idcard")String idcard);


    MemberCardRtnDTO queryMemberHistoryByCardId(String idcard);


    List<FamilyMemberHistoryEntity> queryByOrderId(String id);


    FamilyMemberHistoryEntity queryByIdcard(String idcard);


    List<FamilyMemberDTO> listFamilyMemberHistory(String orderId);


    List<String> queryFamilySaveMemberList(String orderId);


    List<FamilyMemberHistoryEntity> queryByOrderAndOrgId(FamilyMemberHistoryEntity entity);


    MemberCardRtnDTO getMemberStateByIdcard(String idcard);


    MemberCardRtnDTO getLowMemberStateByIdcard(String idcard);


    List<FamilyMemberHistoryDTO> listByOrderIdAndIdCards(String orderId, List<String> idcards);


    List<FamilyMemberDTO> listTempByOrderId(String orderId);


    FamilyMemberDTO getMemberByMemberId(String orderId);


    FamilyMemberDTO getMemberLowByMemberId(String orderId);

    MemberCardRtnDTO queryLowerMemberHistoryByCardId(String idcard);


    int getMemberNumberByFmyIdAndOrderId(@Param("familyId")String familyId,@Param("orderId")String orderId);

    List<String> getUnnormalMasterByFamilyIds(List<String> orderId);

    List<IntegrateCheckMemberDTO> selectIntegrateMember(String orderId, String familyId);

    List<CheckMemberDTO> selectMemberListInfo(String orderId,String familyId);

    List<ConfirmListMemberDTO> selectConfirmMemberDTO(String orderId);

    Integer selectIsSalvByIdcard(String idcard,String nowMonth);
}
